package main

import (
	"fmt"
	"sync"
)

var b chan int
var a chan string

func main() {
	// b = make(chan int) //make函数初始化通道(无缓冲区，又叫同步通道)
	// fmt.Printf("b: %v\n", b)
	// go func() {
	// 	var a int
	// 	a = <-b // 从通道中取值
	// 	fmt.Printf("a: %v\n", a)
	// }()
	// b <- 200 // 发送到通道中

	a = make(chan string, 2)

	var wg sync.WaitGroup
	a <- "a"
	fmt.Println("a 发送到通道中")
	a <- "b"
	fmt.Println("b 发送到通道中")
	wg.Add(1)
	go func() {
		defer wg.Done()
		x := <-a
		y := <-a
		fmt.Printf("x: %v\n", x)
		fmt.Printf("y: %v\n", y)
	}()
	wg.Wait()

}
